#ifndef __FINGERPRINT_H
#define __FINGERPRINT_H

#include "system.h"

// 指纹数据结构
typedef struct {
    uint16_t id;                     // 指纹ID
    uint8_t  privilege;              // 权限级别
    uint32_t register_time;          // 注册时间
    bool     valid;                  // 是否有效
} FingerprintData;

// 指纹模块初始化
SystemStatus FP_Init(void);

// 指纹录入
SystemStatus FP_Enroll(uint16_t *id);

// 指纹删除
SystemStatus FP_Delete(uint16_t id);

// 指纹匹配
SystemStatus FP_Match(uint16_t *id);

// 获取已注册指纹数量
uint16_t FP_GetEnrolledCount(void);

// 清空所有指纹
SystemStatus FP_Clear(void);

// 指纹模块进入低功耗模式
SystemStatus FP_EnterLowPower(void);

// 指纹模块退出低功耗模式
SystemStatus FP_ExitLowPower(void);

#endif // __FINGERPRINT_H 